#include <camera.h>

class CullingCamera : public Camera
{
public:

  void computeFrustumPlanesEquations() const { getFrustumPlanesCoefficients(planeCoefficients); }

  float distanceToFrustumPlane(int index, const Vec& pos) const;
  bool sphereIsVisible(const Vec& center, float radius) const;
  bool aaBoxIsVisible(const Vec& p1, const Vec& p2, bool* entirely=NULL) const;
  
private:
  // F r u s t u m   p l a n e s
  mutable GLdouble planeCoefficients[6][4];
};
